www.gusucode.com > VC++ 编写软件自动升级服务源代码 > VC++ 编写软件自动升级服务源代码/gusucode/updater_src0.8.1.6/ModeFullPropInstall.cpp
/******************************************************************** created: 2004/11/07 created: 7:11:2004 12:16 filename: ModeFullPropInstall.cpp file path: Updater file base: ModeFullPropInstall file ext: cpp author: Geert van Horrik purpose: *********************************************************************/ //********************************************************************* // Includes //********************************************************************* #include "stdafx.h" #include "Updater.h" #include "ModeFullPropInstall.h" #include "ModeFullSheet.h" //********************************************************************* // MESSAGE MAP //********************************************************************* BEGIN_MESSAGE_MAP(CModeFullPropInstall, CPropertyPageEx) ON_MESSAGE(WMU_UPDATE_GUI_FILEPROGRESS, OnUpdateGUIFileProgress) ON_MESSAGE(WMU_UPDATE_GUI_TOTALPROGRESS, OnUpdateGUITotalProgress) END_MESSAGE_MAP() //********************************************************************* // CONSTRUCTOR & DESTRUCTOR //********************************************************************* IMPLEMENT_DYNAMIC(CModeFullPropInstall, CPropertyPageEx) //===================================================================== CModeFullPropInstall::CModeFullPropInstall() : CPropertyPageEx(CModeFullPropInstall::IDD) { // Init singleton classes m_pFunctions = CFunctions::Instance(); m_pSettings = CSettings::Instance(); m_pUpdateInfo = CUpdateInfo::Instance(); m_pLanguage = CLanguage::Instance(); // Set title m_strHeaderTitle = m_pLanguage->GetString(IDS_FULL_INSTALL_TITLE); CString sTemp; sTemp.Format(m_pLanguage->GetString(IDS_FULL_INSTALL_SUBTITLE), m_pSettings->GetAppName()); m_strHeaderSubTitle = sTemp; } //===================================================================== CModeFullPropInstall::~CModeFullPropInstall() { } //********************************************************************* // PUBLIC FUNCTIONS //********************************************************************* //********************************************************************* // PRIVATE FUNCTIONS //********************************************************************* void CModeFullPropInstall::DoDataExchange(CDataExchange* pDX) { CPropertyPageEx::DoDataExchange(pDX); DDX_Control(pDX, lblFileProgress, m_lblFileProgress); DDX_Control(pDX, prgFileProgress, m_prgFileProgress); DDX_Control(pDX, lblFileProgressProcent, m_lblFileProgressProcent); DDX_Control(pDX, lblTotalProgress, m_lblTotalProgress); DDX_Control(pDX, prgTotalProgress, m_prgTotalProgress); DDX_Control(pDX, lblTotalProgressProcent, m_lblTotalProgressProcent); DDX_Control(pDX, lblExplanation, m_lblExplanation); } //===================================================================== BOOL CModeFullPropInstall::OnInitDialog() { // Call original function CPropertyPageEx::OnInitDialog(); // Return TRUE unless you want to set focus to a control return TRUE; } //===================================================================== BOOL CModeFullPropInstall::OnSetActive() { // Call original function CPropertyPageEx::OnSetActive(); // Load language strings CString sTemp; sTemp.Format(m_pLanguage->GetString(IDS_FULL_INSTALL_EXPLANATION), m_pSettings->GetAppName()); m_lblExplanation.SetWindowText(sTemp); m_lblFileProgress.SetWindowText(m_pLanguage->GetString(IDS_STATUS_INITIALIZING)); m_lblTotalProgress.SetWindowText(m_pLanguage->GetString(IDS_STATUS_INITIALIZING)); // Load default values for progress m_prgFileProgress.SetRange32(0, 100); m_lblFileProgressProcent.SetWindowText(_T("0%")); m_prgTotalProgress.SetRange32(0, 100); m_lblTotalProgressProcent.SetWindowText(_T("0%")); // Return value return TRUE; } //===================================================================== LRESULT CModeFullPropInstall::OnWizardNext() { // Get parent CModeFullSheet * pParent = (CModeFullSheet *)GetParent(); // Start next task pParent->PressButton(PSBTN_NEXT); // Don't change page yourself return -1; } //===================================================================== LRESULT CModeFullPropInstall::OnUpdateGUIFileProgress(WPARAM wParam, LPARAM lParam) { // Declare temp variable CString sTemp, sCompare; // Get file progress m_prgFileProgress.SetPos(static_cast<int>(wParam)); sTemp.Format(_T("%d%%"), static_cast<int>(wParam)); m_lblFileProgressProcent.SetWindowText(sTemp); // Get task name sTemp.Format(m_pLanguage->GetString(IDS_FULL_FILEPROGRESS), lParam); m_lblFileProgress.GetWindowText(sCompare); if (sCompare != sTemp) m_lblFileProgress.SetWindowText(sTemp); return S_OK; } //===================================================================== LRESULT CModeFullPropInstall::OnUpdateGUITotalProgress(WPARAM wParam, LPARAM lParam) { // Declare temp variable CString sTemp, sCompare; // Get total progress m_prgTotalProgress.SetPos(static_cast<int>(wParam)); sTemp.Format(_T("%d%%"), static_cast<int>(wParam)); m_lblTotalProgressProcent.SetWindowText(sTemp); // Get task name m_lblTotalProgress.SetWindowText(m_pLanguage->GetString(IDS_FULL_TOTALPROGRESS)); return S_OK; }